1. Field of the Invention
An error-free data telecommunication system for continuous high speed error-free data communications including ARQ signaling, internal data buffering and automatic retransmission.
2. Description of the Prior Art
Existing data communications systems which require an immediate transfer of data between a computer and another distant computer or I/O device, normally use voice-grade telephone lines as the transmission medium between the two locations. Systems that have only a small number of I/O locations and a need for nearly 24 hours per day data transfer commonly employ special dedicated or "private" lines between locations. These lines are leased from common carriers and are often engineered to meet special data signaling requirements.
However, there is a large class of phone-line date transmission users (hereinafter referred to as telecommunications users) which need the switching flexibility of the dial-up telephone network for telecommunications. It is these users which are especially hampered by serious inefficiencies in existing systems, and for which the described invention provides as effective solution.
To successfully transfer data signals over the band-width limited phone network, special signal modifying equipment, called modems, are required. These modems accept the DC pulse output from a computer or terminal equipment and convert this pulse to an audio signal suitable for transmission over voice grade lines or similar facilities. These signals are reconverted to their original pulse state at the receiving end for use by the terminal equipment. Because of a continuing need for ever higher data transfer speed, the modem speed capability has been engineered to almost its maximum theoretical limit.
As the transmission speeds are increased, error rates become a source of concern. In recent tests a modem was demonstrated at 4,800 bits per second which has a detected error rate of only about six bits in 10.sup.7. However, three or four dial-up calls had to be made before a circuit could be found that could be equalized sufficiently to permit transmission. In general it appears that most high speed modems have error rates of about one in 10.sup.5 on the average dial-up phone connection and often is poorer. Error rates of this magnitude are still far too large to be acceptable for computer requirements. Thus all high-speed telecommunication systems must, in addition to the modems, incorporate some error control system.
Ordinarily, modems provide no error control hardware features. So the data processing equipment must provide its own error protection. The most common existing technique is the IBM BSC (Binary Synchronous Communication procedure). In the IBM BSC technique a "Stop-and-Wait" request for repeat (ARQ) system is employed. The time-serial data bits from the computer are partitioned into blocks and various additional bits are added for synchronization and parity error checking purposes. The error control sequence for BSC is as follows: after Block A has been sent, the sending transmitter stops and waits for an acknowledgment. At the receiving end Block A is checked for errors and an acknowledge (ACK) or a negative acknowledge (NAK) message is sent to indicate whether the block was received correctly or not. The sending transmitter cannot transmit Block B until it receives confirmation that Block A has been received correctly.
The main difficulty with the BSC method is that turnaround from send to receive and vice versa is not instantaneous but takes about 150 milliseconds each, or 300 milliseconds total. To this turn-around time is added the round-trip transport delay and the ACK/NAK transmission time for a total waiting time of about 310 to 370 milliseconds at the end of each block. This waiting time is deadtime whether there are errors or not; i.e., for every block transmitted roughly a third of a second is wasted.
It is this deadtime which accounts for the poor throughput. (Throughput is defined here as the total number of error-free data blocks transferred, divided by the total number of blocks transferred. Ref. 1 - Barney Reiffen, William G. Schmidth, Howard Yidkin, "The Design of an Error-Free Data Transmission System for Telephone Circuits," Communications and Electronics, July, 1961 and Ref. 2 - H. C. A. Van Duuren, "Error Probability and Transmission Speed on Circuits Using Error Detection and Automatic Repetition of Signals," I. R. E. Transactions on Communications Systems, March, 1961) of "Stop-and-Wait" ARQ systems on the dial-network even in the absence of transmission errors. unless it is eliminated, effective throughput is limited to a maximum of about three blocks per second regardless of block-length or modem speed. In contrast, a "Continuous" ARQ system as described in the invention, can increase effective throughput in direct proportion to increases in the rated speed of the modem. Continuous ARQ techniques are not new (Refs. 1 and 2) but the described invention differs from these in a variety of ways.
Since the handling of telecommunication data errors in existing systems is left in the computer users hands, a number of unfortunate operational and environmental restrictions impact the user. Namely:
Reduction in data throughput due to overhead loss needed for special communications characters. PA0 Reduction in data throughput due to lost transmission time caused by the "Stop-and-Wait" error-control procedures. PA0 Reduction in data throughput due to excessive retransmission of data records caused by nonoptimum record lengths for the telecommunications environment. PA0 Loss of computer core storage space dedicated to communications software. PA0 Reduction in system throughput due to heavy disk memory access demands caused by short block lengths and frequent calling of error recovery routines. PA0 Loss of CPU capacity dedicated to the management of special communication functions, error control procedures, and retransmission overhead.
In addition to the foregoing inefficiencies introduced into the system in a measurable way, conventional data communications methodology also impacts the user with some indirect but nevertheless real costs. Because of the communication support packages such as IBM'S BTAM software package (Basic Telecommunication Access Method), the user must concern himself with a new and extensive set of systems analysis and software concepts. In other words, a computer user must learn a different set of software conventions when utilizing I/O devices in a communication mode. In addition, he must also dedicate additional computer facilities to the expanded operating system needed to support these new communication procedures.
Thus, it is apparent that a real need exists for an error-free high-speed, high-throughput, telecommunication system for dial-up and private lines which can relieve the computer user of all of the previously mentioned inefficiencies and softward complexities -- provided this system can easily interface with the computer system and be reasonably priced.